Existing applications often provide the same function and operation to users across multiple platforms with different architectures. Typically, a specific software load (i.e. program, update, extra, add-on, etc.) that is configured for a particular architecture must be provided to and loaded on each platform. A distribution CD may contain software for different platforms or configurations, but only the software that is configured for a selected architecture is loaded on a particular platform. Similarly, when application software is downloaded from a website, the software is loaded only for the selected architecture or platform. Once the software is loaded on a particular platform, it usually cannot be shared with other device having the same platform and never can be shared with devices having different architectures. Additionally, current systems do not allow for cross-platform and cross-architecture distribution, removal, sharing, or synchronization of software payloads.
Application or “App” stores are common for mobile devices and desktops. However, these application stores typically target or serve specific platforms. Specialized or new devices and devices with few users experience a critical mass problem and have difficulty encouraging application stores and developers to target these less widely-used platforms. Additionally, application store providers and OEMs typically prefer to not run individual application stores for each device or category of device.
In order to update applications on a device or to load new applications, the device must have some way to access the application store. Currently, devices that are not constantly connected to the Internet, such as vehicle navigation systems or remote sensors, are difficult to update because there is no easy what to connect these devices to an application store.